import Vue from 'vue'

// base.css样式重置 初始化 去掉内外编剧
import 'normalize.css/normalize.css' // A modern alternative to CSS resets
// 组件库:完整引入/按需引入
// 按需引入 : 我要啥我拿啥 => 代码体积小 体验好
// 全部引入:你有啥我都要 => 代码体积大,使用组件方便 !!!
// 原则 : 我们这个项目是后台管理项目 , 不是为了盈利,不是为了让用户用户爽,主要是为了管理公司内部员工,
// 用户体验没有那么重要; 项目比较大, 组件库中的组件可能也会有的7788,=> 全部导入!!!

// 导入了所有组件
import ElementUI from 'element-ui'

// 导入所有样式
import 'element-ui/lib/theme-chalk/index.css'
// 导入英文语言包
// import locale from 'element-ui/lib/locale/lang/en' // lang i18n

// @=>vuecli脚手架创建出来的项目中有一个src的别名
// 导入了项目中的全局样式
import '@/styles/index.scss' // global css

import App from './App'
import store from './store'
import router from './router'

import '@/icons' // svg精灵图
// 直接导入js文件, 直接执行该文件
import '@/permission' // permission control
import { imgerror } from '@/directives'
Vue.directive('imgerror', imgerror)
// set ElementUI lang to EN
// 安装组件库 以及设置语言模式 英文
// Vue.use(ElementUI, { locale })
// 如果想要中文版 element-ui，按如下方式声明
Vue.use(ElementUI)

// import http from '@/utils/request'
// 把封装好的http 挂载到vue的原型上 $http  =>组件内部 this.$http
// Vue.prototype.http = http

Vue.config.productionTip = false
// 将App.vue 跟组件渲染在指定挂载点(最重要)
new Vue({
  el: '#app',
  router,
  store,
  render: h => h(App)
})

// // 注册全局 自定义指令 v-imgerror
// Vue.directive('imgerror', {
//   // 指令的钩子函数
//   inserted(el, binding) {
//     el.onerror = function() {
//       el.src = binding.value
//       // console.log(binding.value)
//     }
//   }
// })

